package com.example.ivos.user.mapper;

import com.example.ivos.user.pojo.dto.UserQuery;
import com.example.ivos.user.pojo.dto.UserSaveParam;
import com.example.ivos.user.pojo.entity.User;
import com.example.ivos.user.pojo.vo.UserVO;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;

import java.util.List;

//@Repository注解表示当前是持久层的一部分，主要职责是进行数据库操作
@Repository
public interface UserMapper {

    // 登录
    @Select("select * from user where username=#{username}")
    UserVO login(String username);

    //新增用户
    @Insert("insert into user(username,password,email,phone,age,gender,create_time,update_time,status,level,parent_id) values(#{username},#{password},#{email},#{phone},#{age},#{gender},#{createTime},#{updateTime},#{status},#{level},#{parentId})")
    int save(User user);

    //查询用户
    List<UserVO> UserSelect(UserQuery userQuery);

    //删除指定用户
    @Delete("delete from user where id=#{id}")
    int del(Long id);

    //修改指定用户
    int update(User user);


}
